A communication network may include network elements that route packets through the communication network. Some network elements may include a distributed architecture, in which packet processing may be distributed among several subsystems of a given network element. Some example subsystems of the network elements may include, but are not limited to, line cards, switches, bridges, and traffic managers. Some network elements may be used in a communication network as a multifunction Ethernet aggregation network element (“multifunction network element”), which may support one or more functions such as link aggregation, hashing, load balancing, or some combination thereof.
The multifunction network element may include a distributed architecture including one or more line cards and/or a bridge. Each of the line cards may include a modular electronic device that may provide network communication functionality. For example, some line cards may include, among other things, an Ethernet switch that may switch traffic through the network element and into a local area network (LAN). Additionally, the line cards may include modules that may process data such as frames or packets. The packets or frames may contain information such as a source address, a media access control (MAC) address, a destination address, data, or some combination thereof.
Like the line cards, the bridge may include a modular electronic device that provides network communication functionality. For example, the bridge may include, among other things, an Ethernet switch, ports, and modules to process hash rules and addresses. The modules may include processing resources and a memory configured to perform a hash rule that maps data received at ingress ports to output at egress ports. The modules may perform matching on any of the fields provided in a typical Ethernet packet at the ingress port to determine which egress port to map the data too. The data may also be flooded or multicast to all egress ports on the bridge. When data is flooded, packets incoming from one source are transmitted to multiple destinations coupled to the egress ports without duplication. The destinations often share a group address so that only the devices that want the data receive it.
Additionally, communication networks may employ link aggregation. Link aggregation may generally describe the practice of using multiple network cables or ports in parallel to increase link speeds beyond the limits of any single cable or port. An example link aggregation standard is e.g., IEEE 802.1AX-2008. Link aggregation may increase redundancy for higher availability. In link aggregation, a group or set of ports may be combined and represented as a single logical port to other components of the network system. Various switching elements of the network system may “see” the aggregated ports known as a link aggregation group (“LAG”) as a single logical communication port in the routing tables or databases of network elements external to the LAG.
In addition, to ensure high reliability and availability in communication networks, load balancing may be used. When implemented, load balancing may provide an effective utilization of bandwidth. In load balancing, data streams at the ingress port may be divided and transmitted on multiple ports in the LAG. In some circumstances, however, the multiple ports in the LAG may change. For example, a port may fail or be repaired from a previous failure. Following the changes to the LAG, a network element may perform another load balancing. During the load balancing following a change to the LAG, data may be lost.
The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one example technology area where some embodiments described herein may be practiced.